<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/7/24
 * Time: 20:51
 */

namespace Modules\Admin\Service;


class TemplateService
{

    //获取根目录下的所有文件
    public function getTemplate(){
        //获取public目录下的所有文件目录
        $templates = glob(public_path('templates/*'));

        //循环模板文件路径数据
        //定义一个数组来接收模板数据
        $configs = [];
        foreach ($templates as $v){
            //调用判断是否存在json配置文件方法,如果存在配置文件,这一套模板才是有效的模板,否则,直接忽略
            if ($config = $this->hasConfig($v)){
                $configs[] = $config;
            }
        }

        //将数据返回
        return $configs;
    }


    public function hasConfig($dir){
        //定义当前目录中的配置文件的文件名
        $file = $dir . '/package.json';
        //判断配置文件是否存在，如果存在，才是有效的文件
        if (is_file($file)){
            //获取配置文件
            $config = file_get_contents($file);
            //将json数据转成php数组
            $config = json_decode($config,true);
            $config['preview'] = asset('templates/' . basename($dir) . '/' .$config['preview']);
            $config['name'] = basename($dir);
            //将数据返回
            return $config;
        }
    }



}